﻿using OSGeo.GDAL;
using OSGeo.OGR;
using RemoteSensingImageDirectServer.Untils.ScopeSpace;

namespace RemoteSensingImageDirectServer.Untils.Source
{
    public interface IRSIMapSource:IDisposable
    {
        /// <summary>
        /// 获取当前数据源的key
        /// </summary>
        /// <returns></returns>
        string GetKey();

        /// <summary>
        /// 获取目标投影编码
        /// </summary>
        /// <returns></returns>
        public int GetDstEPSG();

        /// <summary>
        /// 获取当前图层下投影坐标数据
        /// </summary>
        /// <returns></returns>
        Dataset GetDstDataset();

        /// <summary>
        /// 获取掩膜文件的元数据文件
        /// </summary>
        /// <returns></returns>
        DataSource GetMaskDataSource();

        /// <summary>
        /// 获取掩膜文件的文件路径
        /// </summary>
        /// <returns></returns>
        string GetMaskFilename();

        /// <summary>
        /// 获取当前图层下投影坐标数据范围
        /// </summary>
        /// <returns></returns>
        RasterEnvelope GetDstRasterEnvelope();
    }
}
